English Computing Dictionary
◊ HIGHER-ORDER MACRO
higher-order macro
A means of expressing certain {higher-order function}s in a
first order language. Proposed by Phil Wadler. Higher-order
macros cannot be recursive at the top level but they may
contain recursive definitions. E.g.
map f l ◦ m l
where
m [] ◦ []
m (x:xs) ◦ f x : m xs
Expanding a call to this macro is equivalent to specialising a
call to map in its first argument.
See {partial evaluation}.